import request from '@/utils/request'

// 操作日志实体类型
export interface OperateLog {
  id: number
  operateEmpId: number | null
  operateTime: string
  className: string
  methodName: string
  methodParams: string
  returnValue: string
  costTime: number
}

// 分页结果类型
export interface PageResult<T> {
  total: number
  rows: T[]
}

// API基础响应类型
export interface ApiResult<T> {
  code: number
  msg: string
  data: T
}

// 修改：使用参数对象方式接收分页和模糊查询参数
export const queryPageApi = (params: {
  page: number
  pageSize: number
  name?: string // 可选的模糊查询参数
}): Promise<ApiResult<PageResult<OperateLog>>> => {
  // 构建查询参数
  let url = `/log?page=${params.page}&pageSize=${params.pageSize}`

  // 添加模糊查询参数（如果存在）
  if (params.name && params.name.trim() !== '') {
    url += `&name=${encodeURIComponent(params.name.trim())}`
  }

  return request.get(url)
}
